14 research outputs found

    Transformaciones Modelo a Modelo y Modelo a Código con IBM Rational Software Architect

    Get PDF
    IBM Rational Software Architect (RSA) es un entorno optimizado -tanto para Windows como para Linux- para el de modelado y desarrollo de aplicaciones C++ y JavaEE. Este entorno está basado en Eclipse y está preparado para poder desarrollar aplicaciones siguiendo los principios del desarrollo dirigido por modelos: realizar transformaciones entre modelos, de modelo a código, de código a modelo. También está preparado para el desarrollo de servicios Web de forma convencional o a partir de modelos UML. Al estar basado en eclipse es compatible con la mayoría de los plugins que este soporta, como el que da soporte a AspectJ (AJDT). Un inconveniente es que no es software libre, aunque se puede obtener una versión de prueba de 30 días en la página oficial; además IBM tiene una política abierta de licencias en sus productos de desarrollo para el entorno universitario e investigación. Para beneficiarse de esta política solo hay que registrarse en su página oficial

    La enseñanza de arquitecturas distribuidas en la universidad para satisfacer la demanda del internet de las cosas

    Get PDF
    Teaching of distributed architectures in the computer engineering degrees has traditionally been based on contents related to well-known established software paradigms and architectures. However, over the last few years, new solutions in the field of distributed architectures have emerged, especially within the field of the Internet of Things (IoT). In this article we tackle a methodology for teaching distributed architectures for the IoT from this new perspective. In this context, the description, implementation and testing of distributed architectures for IoT is therefore proposed. The methodology includes the development and testing of a case study relevant for the scope of IoT and smart cities using emerging technologies. In particular, in this paper we show the procedure followed to implement and test a case study related to traffic regulation and emergency vehicles movement, enabling such vehicles to reach their destination in the minimum amount of time.La enseñanza de las arquitecturas distribuidas en los estudios universitarios de ciencias de la computación o ingeniería informática se ha basado tradicionalmente en contenidos relacionados con paradigmas y arquitecturas de software bien conocidos y establecidos. Sin embargo, en los últimos años han surgido nuevas soluciones en el campo de las arquitecturas distribuidas, especialmente en el campo del Internet de las Cosas (IoT). En este artículo abordamos una metodología para enseñar arquitecturas distribuidas para el IoT desde esta nueva perspectiva. En este contexto, se propone, por tanto, la descripción, aplicación y prueba de arquitecturas distribuidas para el IoT. La metodología incluye el desarrollo y ensayo de un caso de estudio relevante en el ámbito del IoT y las ciudades inteligentes mediante el uso de tecnologías emergentes. En particular, en este artículo mostramos el procedimiento seguido para implementar y probar un caso de estudio relacionado con la regulación del tráfico y el desplazamiento de vehículos de emergencia, permitiendo que dichos vehículos lleguen a su destino en el menor tiempo posible

    CARED-SOA: A Context-Aware Event-Driven Service-Oriented Architecture

    Get PDF
    Actualmente, la conciencia del contexto se ha vuelto esencial en las aplicaciones y servicios de software debido a la alta demanda de los usuarios, especialmente para las aplicaciones de computación móvil. Esta necesidad de proporcionar conciencia del contexto requiere una infraestructura de software no solo para recibir información de contexto, sino también para hacer uso de ella de manera que proporcione servicios ventajosos que se puedan personalizar según las necesidades del usuario. En este artículo, proporcionamos una arquitectura orientada a servicios impulsada por eventos respaldada por un bus de servicio empresarial, que facilitará la incorporación de datos de Internet de las Cosas y proporcionará servicios conscientes del contexto en tiempo real. El resultado, que ha sido validado a través de un estudio de caso del mundo real, es una arquitectura consciente del contexto escalable que se puede aplicar en un amplio espectro de dominios.Currently, context awareness has become essential in software applications and services owing to the high demand by users, especially for mobile computing applications. This need to provide context awareness requires a software infrastructure not only to receive context information but also to make use of it so that it provides advantageous services that may be customized according to user needs. In this paper, we provide an event-driven service-oriented architecture supported by an enterprise service bus, which will facilitate the incorporation of Internet of Things data and provide real-time context-aware services. The result, which has been validated through a real-world case study, is a scalable context-aware architecture which can be applied in a wide spectrum of domains"This work was supported in part by the Spanish Ministry of Science and Innovation and the European Union FEDER Funds under Project TIN2015-65845-C3-3-R and in part by the University of Cádiz under Project UCA PR2016-032

    COLLECT: COLLaborativE ConText-aware service oriented architecture for intelligent decision-making in the Internet of Things

    Get PDF
    Internet of Things (IoT) has radically transformed the world; currently, every device can be connected to the Internet and provide valuable information for decision-making. In spite of the fast evolution of technologies accompanying the grow of IoT, we are still faced with the challenge of providing a service oriented architecture, which facilitates the inclusion of data coming together from several IoT devices, data delivery among a system’s agents, real-time data processing and service provision to users. Furthermore, context-aware data processing and architectures still pose a challenge, in spite of being key requirements in order to get stronger IoT architectures. To face this challenge, we propose a COLLaborative ConText Aware Service Oriented Architecture (COLLECT), which facilitates both the integration of IoT heterogeneous domain context data — through the use of a light message broker — and easy data delivery among several agents and collaborative participants in the system — making use of an enterprise service bus —. In addition, this architecture provides real-time data processing thanks to the use of a complex event processing engine as well as services and intelligent decision-making procedures to users according to the needs of the domain in question. As a result, COLLECT has a great impact on context-aware decentralized and collaborative reasoning for IoT, promoting context-aware intelligent decision making in such scope. Since context-awareness is key for a wide range of recommender and intelligent systems, the presented novel solution improves decision making in a large number of fields where such systems require to promptly process a variety of ubiquitous collaborative and context-aware data

    Improving Resource Consumption in Context- Aware Mobile Applications Through Alternative Architectural Styles

    Get PDF
    Over the last years, the Internet of Things has fostered a growing interest in context-aware mobile applications; this fact is mainly due to highly favoring information provision from multiple Internetconnected devices. To identify user context, these applications collect information from the user and his/her environment and typically lter app information, so that the user receives only the interesting and relevant information. However, such a task usually implies further resource consumption on user mobile devices, not only regarding battery usage but also in terms of network traf c. Accordingly, although context-aware applications can improve user experiences in their daily lives, they must ensure the maintenance of lowlevel resource consumption; otherwise, the applications are promptly replaced by less consuming ones, and therefore, removed from the mobile market. In this paper, we evaluate and discuss several architectural styles for context-aware mobile applications, as well as, providing a set of guidelines to decide on the right architecture for a particular app depending on its characteristics. The use of such guidelines when choosing the right architectural style can strongly in uence the resource consumption of context-aware mobile applications. Following these guidelines, user satisfaction of a context-aware mobile application may be improved, thus guaranteeing the app success

    REST4CEP: RESTful APIs for complex event processing

    Get PDF
    El Procesamiento de Eventos Complejos (CEP) es una tecnología poderosa ampliamente utilizada en arquitecturas de software de vanguardia para apoyar la toma de decisiones en múltiples dominios. Actualmente, desarrollar dichas arquitecturas de software mejoradas con CEP no es una tarea fácil y no existen Interfaces de Programación de Aplicaciones (APIs) de propósito general que soporten la programación y el desarrollo de software para sistemas basados en CEP. Este artículo proporciona dos APIs RESTful que soportan la gestión, almacenamiento y mantenimiento de eventos y patrones de interés tanto en tiempo de diseño como en tiempo de ejecución. De esta manera, simplificamos y aceleramos el desarrollo flexible de cualquier arquitectura de software basada en CEPComplex Event Processing (CEP) is a powerful technology thoroughly used in cuttin-edge software architectures to support decision-making in multiple domains. Currently, developing such CEP-enhanced software architectures is not an easy task and there are no general purpose Application Programming Interfaces (APIs) which support programming and software development for CEP-based systems. This paper provides two RESTful APIs which support the management, storage and maintenance of events and patterns of interest both in design time and at runtime. This way, we simplify and speed up the flexible development of any CEP-based software architecture.This work was supported by the Spanish Ministry of Science and Innovation and the European Union FEDER Funds [grant number RTI2018-093608-B-C33

    Evaluating a Flow-Based Programming Approach as an Alternative for Developing CEP Applications in IoT

    Get PDF
    One of the main advantages brought by the Internet of Things (IoT) is the possibility of having large amounts of data from several sources that allow us, once analyzed, to make decisions in various domains in real time. This implies the need to be able to process large volumes of data in more or less limited processing times depending on the application domain. In this sense, complex event processing (CEP), used in conjunction with an enterprise service bus (ESB), has proven to be very efficient in multiple domains. In search for greater efficiency, some CEP engines offer the option of using flow-based programming (FBP) rather than their traditional programming using CEP together with an event bus. However, its use, while it may be more efficient, can lead to other limitations. In this article, we analyze and describe the performance and limitations of using a CEP engine with an ESB versus a CEP engine with FBP. This will allow developers to decide which option is more convenient for their IoT system depending on the application domain and its specific needs

    Real-Time Context-Aware Microservice Architecture for Predictive Analytics and Smart Decision-Making

    Get PDF
    The impressive evolution of the Internet of Things and the great amount of data flowing through the systems provide us with an inspiring scenario for Big Data analytics and advantageous real-time context-aware predictions and smart decision-making. However, this requires a scalable system for constant streaming processing, also provided with the ability of decision-making and action taking based on the performed predictions. This paper aims at proposing a scalable architecture to provide real-time context-aware actions based on predictive streaming processing of data as an evolution of a previously provided event-driven service-oriented architecture which already permitted the context-aware detection and notification of relevant data. For this purpose, we have defined and implemented a microservice-based architecture which provides real-time context-aware actions based on predictive streaming processing of data. As a result, our architecture has been enhanced twofold: on the one hand, the architecture has been supplied with reliable predictions through the use of predictive analytics and complex event processing techniques, which permit the notification of relevant context-aware information ahead of time. On the other, it has been refactored towards a microservice architecture pattern, highly improving its maintenance and evolution. The architecture performance has been evaluated with an air quality case study

    Paving the way to collaborative context-aware mobile applications: a case study on preventing worsening of allergy symptoms

    Get PDF
    En los últimos años, la evolución de los teléfonos inteligentes y sus aplicaciones de software ha crecido exponencialmente; junto con el avance del Internet de las Cosas y las ciudades inteligentes, ha generado una gran demanda de servicios y aplicaciones en estos dominios. Aunque la amplia gama de aplicaciones móviles es incuestionable, los ciudadanos ya exigen que las aplicaciones se adapten a sus necesidades y situaciones específicas en tiempo real, es decir, que sean conscientes del contexto. Sin embargo, las aplicaciones móviles conscientes del contexto a menudo son muy limitadas y pierden la oportunidad de beneficiarse de la retroalimentación proporcionada por la colaboración ciudadana. Para llenar este vacío, este documento propone una arquitectura de software y una aplicación móvil colaborativas y conscientes del contexto. En particular, los hemos implementado en el ámbito de la e-salud, más específicamente en el área de las alergias estacionales, que causan que las personas alérgicas experimenten síntomas molestos que podrían evitarse si tuvieran acceso a información sobre el polen en tiempo real. Además, también se beneficiarán de la colaboración ciudadana a través del conocimiento de los síntomas que otras personas alérgicas con la misma alergia y en la misma ubicación están experimentando. Para ello, los usuarios podrán proporcionar sus síntomas en cualquier momento a través de su aplicación móvil y la arquitectura propuesta procesará constantemente esa información en tiempo real, enviando notificaciones a los usuarios tan pronto como se vea que los síntomas reportados superan un cierto umbral. Se han probado el rendimiento de la arquitectura, el consumo de recursos de la aplicación y una encuesta de satisfacción sobre la usabilidad y utilidad de la aplicación; todos los resultados han sido completamente satisfactorios.In recent years, the evolution of smartphones and their software applications has grown exponentially; together with the advance of the Internet of Things and smart cities, it has raised huge demand for services and applications in these domains. Although the wide range of mobile applications is unquestionable, citizens already demand that applications adapt to their specific needs and situations in real time, that is, that they are context-aware. However, context-aware mobile applications are often very limited and miss out on the opportunity of benefiting from feedback provided by citizen collaboration. In order to fill this gap, this paper proposes a context-aware and collaborative software architecture and mobile application. In particular, we have implemented them in the scope of e-health, more specifically in the area of seasonal allergies, which cause allergic people to experience annoying symptoms that could be avoided by having access to pollen information in real time. Furthermore, they will also benefit from citizen collaboration through the knowledge of the symptoms other allergic people with the same allergy and in the same location are experiencing. To this end, users will be able to provide their symptoms at any time through their mobile application and the proposed architecture will constantly process that information in real time, sending notifications to users as soon as reported symptoms are seen to exceed a certain threshold. The architecture’s perfor mance, the application’s resource consumption and a satisfaction survey of the app’s usability and usefulness have been tested; all results have been fully satisfactoryThis work was supported by the Spanish Ministry of Science and Innovation and the European Union FEDER Funds [grant numbers RTI2018-093608-B-C33, RED2018-102654-T
    corecore